package data.composition.factory.core;

import cn.hutool.core.lang.func.Func1;

import java.util.function.Function;

/**
 * @author ZhangJinyu
 * @since 2024-12-13
 */
public interface Mapping<T, R, V> {

    Mapping<T, R, V> map(Func1<T, R> left);

    <RV> Mapping<T, R, V> map(Func1<T, RV> left, Function<R, RV> right);

    DataComposition<T> over();
}
